package com.itdachang.design.structural.adapter;

/**
 *
 * 适配器
 * 1、系统中已经存在两个接口 player translate 没有任何关系
 *
 * 需求 现在一个小小的...日本友人 看电影字幕是中文不习惯
 *
 * 2、我们不改变原有系统的基础上实现这个功能就需要一个适配器
 *
 * 系统存在的接口不要动，扩展一个新的类，来链接两个之前不同的类
 *
 * 什么场景用到
 * Tomcat如何将Request流转为标准Request
 *  Tomcat Request 接口
 *  Servlet Request 接口
 *  tomcat === CoyoteAdapter === ServletRequest
 * Spring Aop的AdvisorAdapter 是什么 增加适配器
 * 前置、后置、返回、结束 Advisor通知方法
 * 底层真的目标方法
 * Spring Mvc 经典的 HandlerAdapter 是什么
 * HelloController.hello()
 * HandlerAdapter
 * Servlet.doGet()
 * SpringBoot中 WebMvcConfigurerAdapter为什么存在又取消
 * @author gcq
 * @Create 2022-02-08
 */
public class MainTest {
    public static void main(String[] args) {
        // 1、日本友人要看电影带日本字幕
        MoviePlayer moviePlayer = new MoviePlayer();
        moviePlayer.player();


        JPMovieAdapter jpMovieAdapter = new JPMovieAdapter();
        jpMovieAdapter.player();
    }
}